| X | |
|---|---|
| A | -170 |
| B | -150 |
| C | -140 |
| D | -80 |
| E | -30 |
| F | 0 |
| G | 10 |
| H | 30 |
| I | 45 |
| J | 150 |
| K | 165 |
| L | 175 |
Géométries
2024-11-18
Imaginons que le monde se réduise à une ligne, comme dans le projet futuriste de la ville de Neom.
On choisit 12 positions \(X_1 ...X_{12}\)à l’intérieur de ce Monde en imposant comme seule contrainte que deux individus ne peuvent pas occuper la même position. Cela signifie qu’il existe une distance minimale entre deux individus qu’on fixera par exemple à 10.
| X | |
|---|---|
| A | -170 |
| B | -150 |
| C | -140 |
| D | -80 |
| E | -30 |
| F | 0 |
| G | 10 |
| H | 30 |
| I | 45 |
| J | 150 |
| K | 165 |
| L | 175 |
On peut visualiser facilement le résultat en adoptant une direction quelconque puisque notre ligne n’est pas orientée vers une direction particulière
Dans notre monde linéaire on construite une distance \(D_{ij}\) qui sera par définition une fonction de la seule variable de localisation \(X_i\). Un choix évident est la différence en valeur absolue :
\(D_{ij} = |X_i - X_j|\)
Comme notre monde est fini on peut normaliser la distance sur l’intervalle \([0 ; 1]\) en divisant les valeurs de distance par la valeur maximale possible (de préférence à la valeur maximale observée).
\(D_{ij}^{norm} = |X_i - X_j|/ D_{max}\)
Le maximum possible étant pour nous égal ici à \(D_{max} = 360\), la matrice de distance se calcule sans difficultés avec la fonction dist()de R-base :
| A | B | C | D | E | F | G | H | I | J | K | L | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| A | 0.00 | 0.06 | 0.08 | 0.25 | 0.39 | 0.47 | 0.50 | 0.56 | 0.60 | 0.89 | 0.93 | 0.96 |
| B | 0.06 | 0.00 | 0.03 | 0.19 | 0.33 | 0.42 | 0.44 | 0.50 | 0.54 | 0.83 | 0.88 | 0.90 |
| C | 0.08 | 0.03 | 0.00 | 0.17 | 0.31 | 0.39 | 0.42 | 0.47 | 0.51 | 0.81 | 0.85 | 0.88 |
| D | 0.25 | 0.19 | 0.17 | 0.00 | 0.14 | 0.22 | 0.25 | 0.31 | 0.35 | 0.64 | 0.68 | 0.71 |
| E | 0.39 | 0.33 | 0.31 | 0.14 | 0.00 | 0.08 | 0.11 | 0.17 | 0.21 | 0.50 | 0.54 | 0.57 |
| F | 0.47 | 0.42 | 0.39 | 0.22 | 0.08 | 0.00 | 0.03 | 0.08 | 0.12 | 0.42 | 0.46 | 0.49 |
| G | 0.50 | 0.44 | 0.42 | 0.25 | 0.11 | 0.03 | 0.00 | 0.06 | 0.10 | 0.39 | 0.43 | 0.46 |
| H | 0.56 | 0.50 | 0.47 | 0.31 | 0.17 | 0.08 | 0.06 | 0.00 | 0.04 | 0.33 | 0.38 | 0.40 |
| I | 0.60 | 0.54 | 0.51 | 0.35 | 0.21 | 0.12 | 0.10 | 0.04 | 0.00 | 0.29 | 0.33 | 0.36 |
| J | 0.89 | 0.83 | 0.81 | 0.64 | 0.50 | 0.42 | 0.39 | 0.33 | 0.29 | 0.00 | 0.04 | 0.07 |
| K | 0.93 | 0.88 | 0.85 | 0.68 | 0.54 | 0.46 | 0.43 | 0.38 | 0.33 | 0.04 | 0.00 | 0.03 |
| L | 0.96 | 0.90 | 0.88 | 0.71 | 0.57 | 0.49 | 0.46 | 0.40 | 0.36 | 0.07 | 0.03 | 0.00 |
Dans notre espace à une dimension, la variable \(X_i\) peut correspondre indifféremment à une position spatiale ou à un attribut statistique. Le choix d’une méthode de régionalisation revient donc ici à une simple classification visant à minimiser les distances intra-classes et maximiser les distances inter-classes. Il suffit donc d’appliquer un programme de classification pour obtenir une régionalisation de notre espace.
On peut utiliser ici la procédure hclust de R-base
On peut encore plus simplement utiliser la procédure kmeans de R-base mais en fixant le nombre de classes
Imaginons maintenant que le monde se réduit à une cercle autour d’une planète, comme dans le cas des anneaux de Saturne
On tire au hasard 12 positions de longitude \(Lon_1 ...Lon _{12}\) et on fixe toutes les latitudes à 0.
| Lon | Lat | |
|---|---|---|
| A | -170 | 0 |
| B | -150 | 0 |
| C | -140 | 0 |
| D | -80 | 0 |
| E | -30 | 0 |
| F | 0 | 0 |
| G | 10 | 0 |
| H | 30 | 0 |
| I | 45 | 0 |
| J | 150 | 0 |
| K | 165 | 0 |
| L | 175 | 0 |
Il s’agit apparemment de la même situation que précédemment (les valeurs de longitude retenue correspondent aux valeurs précédentes de X) mais la géométrie n’est plus la même ce qui change fondamentalement les distances.
Si l’on veut visualiser correctement les distances entre les points, il faut adopter une projection polaire qui respecte les distances. Si l’on suppose que notre planète à un rayon de 1000 km, on peut construire les coordonnées suivantes :
| x | y | |
|---|---|---|
| A | -984.8078 | -173.64818 |
| B | -866.0254 | -500.00000 |
| C | -766.0444 | -642.78761 |
| D | 173.6482 | -984.80775 |
| E | 866.0254 | -500.00000 |
| F | 1000.0000 | 0.00000 |
| G | 984.8078 | 173.64818 |
| H | 866.0254 | 500.00000 |
| I | 707.1068 | 707.10678 |
| J | -866.0254 | 500.00000 |
| K | -965.9258 | 258.81905 |
| L | -996.1947 | 87.15574 |
Ce qui donne l’image suivante :
Dans notre monde circulaire, il n’est pas possible de se déplacer en ligne droite. Les distances correspondent donc aux trajets effectués sur un arc de cercle ce qui donne une valeur maximale égale à \(2 \times \pi \times R\) avec \(R\) égal au rayon du cercle. On normalise par la distance maximale.
| A | B | C | D | E | F | G | H | I | J | K | L | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| A | 0.00 | 0.03 | 0.07 | 0.50 | 0.88 | 0.99 | 1.00 | 0.97 | 0.91 | 0.12 | 0.05 | 0.02 |
| B | 0.03 | 0.00 | 0.01 | 0.33 | 0.75 | 0.93 | 0.97 | 1.00 | 0.98 | 0.25 | 0.15 | 0.09 |
| C | 0.07 | 0.01 | 0.00 | 0.25 | 0.67 | 0.88 | 0.93 | 0.99 | 1.00 | 0.33 | 0.21 | 0.15 |
| D | 0.50 | 0.33 | 0.25 | 0.00 | 0.18 | 0.41 | 0.50 | 0.67 | 0.79 | 0.82 | 0.71 | 0.63 |
| E | 0.88 | 0.75 | 0.67 | 0.18 | 0.00 | 0.07 | 0.12 | 0.25 | 0.37 | 1.00 | 0.98 | 0.95 |
| F | 0.99 | 0.93 | 0.88 | 0.41 | 0.07 | 0.00 | 0.01 | 0.07 | 0.15 | 0.93 | 0.98 | 1.00 |
| G | 1.00 | 0.97 | 0.93 | 0.50 | 0.12 | 0.01 | 0.00 | 0.03 | 0.09 | 0.88 | 0.95 | 0.98 |
| H | 0.97 | 1.00 | 0.99 | 0.67 | 0.25 | 0.07 | 0.03 | 0.00 | 0.02 | 0.75 | 0.85 | 0.91 |
| I | 0.91 | 0.98 | 1.00 | 0.79 | 0.37 | 0.15 | 0.09 | 0.02 | 0.00 | 0.63 | 0.75 | 0.82 |
| J | 0.12 | 0.25 | 0.33 | 0.82 | 1.00 | 0.93 | 0.88 | 0.75 | 0.63 | 0.00 | 0.02 | 0.05 |
| K | 0.05 | 0.15 | 0.21 | 0.71 | 0.98 | 0.98 | 0.95 | 0.85 | 0.75 | 0.02 | 0.00 | 0.01 |
| L | 0.02 | 0.09 | 0.15 | 0.63 | 0.95 | 1.00 | 0.98 | 0.91 | 0.82 | 0.05 | 0.01 | 0.00 |
La distance maximale est alors observée entre des points situés à l’opposé l’un de l’autre sur le cercle comme A et D. Mais en revanche les points qui étaient auparavant très éloignés dans le monde du segment comme A et L sont désormais très proches dans le monde du cercle puisque celui-ci se referme à leur niveau.
Dans notre monde circulaire, la classification est très différente de celle observée dans le monde du segment alors même que les valeurs numériques sont au départ les mêmes. C’est la projection qui diffère.
On va utilise la procédure kmeans de R-base en fixant le nombre de classes à trois comme précédemment
WorldRegio